Storage management tasks have historically been performed in host software executing at a host computing unit and external to a storage system. The host software managed the storage space, including allocation and deallocation of the memory space.
In recent years, data storage systems have evolved to a point where they perform many storage management tasks in conjunction with, or independent of, the host software. As the management functions increase on the peripheral storage system, there is a continuing need to improve communication between the host software and the data storage system. One particular instance for this improved communication is when the host software deallocates some area of storage without informing the peripheral storage management system. The effectiveness of the data storage system can be improved if it is routinely informed when the host deallocates space because the data storage system can likewise deallocate that space and use it for other purposes.
One prior art solution is to have the host generate an express command each time it deallocates space, and transfer that command to the peripheral storage management system to alert the peripheral that the space has been deallocated at the host. One drawback with this approach is that the command must penetrate several layers of software from the host to the peripheral storage management system, often requiring customization of the command for different file systems or software/firmware interfacing layers. Another drawback concerns synchronization of the deallocation procedure at the data storage system in response to the host command. Upon receipt of the command to deallocate a space, the data storage system must synchronize the deallocation of that space in a manner which does not interfere with possible other users who might be allocating that same space.
U.S. Pat. No. 5,193,184 to Belsan et al. proposes another solution in which the peripheral data storage system monitors for administration information to indicate when the host has deallocated space. The administration information is generated in a manner transparent to the host. However, this method also suffers from the synchronization problem, in that the peripheral storage management system must still coordinate deallocation of the storage space in a manner which avoids access conflicts. The inventor has developed a system and methods which solve the above problems.